package cn.iocoder.yudao.module.wms.dal.dataobject.otherin;

import cn.iocoder.yudao.framework.mybatis.core.type.StringListTypeHandler;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 通用入库单身 DO
 *
 * @author 芋道源码
 */
@TableName("wms_other_in_d")
@KeySequence("wms_other_in_d_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OtherInDDO extends BaseDO {

    /**
     * 序号
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
     * 单头
     */
    private Long headId;
    /**
     * 序号
     */
    private Integer sequence;
    /**
     * 产品
     */
    private Long productId;
    /**
     * 仓库
     */
    private Long warehouseId;
    /**
     * 库位
     */
    private Long positionId;
    /**
     * 业务数量
     */
    private BigDecimal businessQty;
    /**
     * 单位
     */
    private Long unitId;
    /**
     * 单位成本
     */
    private BigDecimal unitAmt;
    /**
     * 成本金额
     */
    private BigDecimal costAmt;
    /**
     * 批次号
     */
    private String batchNo;
    /**
     * 序列号
     */
    @TableField(typeHandler = StringListTypeHandler.class)
    private List<String> serialNo;
    /**
     * 备注
     */
    private String remark;
    /**
     * 乐观锁
     */
    private Long revision;

}